/**
 * Created by machan on 2017/5/22.
 */

/**
 * desc:生成RPID的工具类
 * ------------------------------------------------------------------------------------------------------------

 原数据(长度24位)                                 三十六进制编码（0-9，A-Z）（长度16位）

 分段含义   平台    月日   时分秒毫秒数   终端ID后10位            平台  月日   时分秒毫秒数     终端ID后10位

 分段长度         1  4       9           10            1    2      6             7

 演示数据        A 1231   235959999  9999999999 ==>    A   Y7    3WHFWF       4LDQPDR

 注：所有位数为固定，不足的前补0。
 ------------------------------------------------------------------------------------------------------------
 *
 *
 * <p>
 * 创建人：聂旭阳 创建日期：2014-4-12
 * </p>
 *
 * @version V1.0
 */

import DeviceUtils from './DeviceUtils';

class RpidUtils {
    /**
     * 获取流水号
     * @returns {string}
     */
    getRpid() {
        let currentTime = new Date();
        let mr = parseInt(currentTime.Format("MMdd")).toString(36);
        let sfm = parseInt(currentTime.Format("hhmmssSSS")).toString(36);
        // let sfm = ("" + currentTime.getHours() + currentTime.getMinutes() + currentTime.getSeconds()).toString(36);
        return 'A' + mr + sfm + DeviceUtils.getTerminalid();
    }
}

RpidUtils = new RpidUtils();
module.exports = RpidUtils;